#extends Sprite2D
#var 分数 = 0
#var 成长 = 5
#var text;
#
#@onready var she_tou = %蛇头
#@onready var 身体 = %身体
#@onready var 身体2 = %身体2
#@onready var 真分数 = %Label
#
##func _inpit(event):
	##if(Input.is_key_pressed(KEY_0)):
		##放置苹果到随机位置()
#
#func _process(event):
	##
	#if she_tou and self.position.distance_to(she_tou.position) < 5:
		#放置苹果到随机位置()
		#增加分数()
		#
	#
#func 增加分数():
	#分数 += 25 
	#真分数.text=str(分数)
	#成长 += 1
	#while 成长 >= 5:
		#var 新身体 = %身体.duplicate()
		#%蛇头.体节.append(新身体)  
		#self.get_parent().add_child(新身体)
		#print(%蛇头.体节)
		#成长 = 0  # 重置计数器
		#
#var 苹果列 = 0
#var 苹果行 = 0
#var horizontal_step = 83  # 水平方向每格移动距离
#var vertical_step = 36    # 垂直方向每格移动距离
#var 原点偏移_x = 41       # 网格系统原点的x偏移
#var 原点偏移_y = 18       # 网格系统原点的y偏移
#
#func _ready():
	## 设置随机种子
	#randomize()
	## 把苹果放到随机位置
	#放置苹果到随机位置()
	#
#func 放置苹果到随机位置():
	## 随机选择网格位置 (0-18列, 0-13行)
	#苹果列 = randi_range(0, 13)
	#苹果行 = randi_range(0, 17)
	#
	#
	## 计算实际屏幕位置
	#var 屏幕x = 原点偏移_x + 苹果列 * horizontal_step
	#var 屏幕y = 原点偏移_y + 苹果行 * vertical_step
	#
	## 移动苹果到该位置
	#self.position.x = 屏幕x
	#self.position.y = 屏幕y
	#
	#print("苹果放在位置: 列", 苹果列, ", 行", 苹果行)

extends Sprite2D
var 分数 = 0
var 成长 = 5
var text

@onready var she_tou = %蛇头
@onready var 身体 = %身体
@onready var 身体2 = %身体2
@onready var 真分数 = %Label

# 修复函数名和参数
func _process(delta):
	# 检测是否被蛇头吃到
	if she_tou and self.position.distance_to(she_tou.position) < 5:
		放置苹果到随机位置()
		增加分数()
		
func 增加分数():
	分数 += 25 
	真分数.text = str(分数)
	成长 += 1
	
	# 修复：每吃一个苹果就增加一个身体部分
	if 成长 >= 5:
		var 新身体 = 身体.duplicate()
		she_tou.体节.append(新身体)  
		get_parent().add_child(新身体)
		print(she_tou.体节)
		成长 = 0  # 重置计数器
		
var 苹果列 = 0
var 苹果行 = 0
var horizontal_step = 83  # 水平方向每格移动距离
var vertical_step = 36    # 垂直方向每格移动距离
var 原点偏移_x = 41       # 网格系统原点的x偏移
var 原点偏移_y = 18       # 网格系统原点的y偏移

func _ready():
	randomize()
	放置苹果到随机位置()
	
func 放置苹果到随机位置():
	苹果列 = randi_range(0, 13)
	苹果行 = randi_range(0, 17)
	
	var 屏幕x = 原点偏移_x + 苹果列 * horizontal_step
	var 屏幕y = 原点偏移_y + 苹果行 * vertical_step
	
	self.position.x = 屏幕x
	self.position.y = 屏幕y
	
	print("苹果放在位置: 列", 苹果列, ", 行", 苹果行)
